Binary encryption devices for encrypting digital information, or key generators, are known. As is known, such key generators are typically used to encode plain text, such as a user's digitally coded speech, and to transmit the resulting ciphered text over a channel. Internally, a typical key generator generates a synchronized psuedo random stream of bits based on a key which are individually combined with the input plain text bits. Often this is done with an EXCLUSIVE OR gate. The resulting bit stream is output as ciphered text. Means of synchronizing these devices are well known and are not addressed in this specification.
Also known are various types of information coding. One of these used for efficiently coding speech for transmission over radio is multilevel sub-band coding (MSBC). In addition to various data overhead, MSBC produces output having n-bit samples whose magnitudes are algorithmically obtained from original speech input and maintain a proportionally to some characteristic (e.g. voltage, energy, etc.) of the processed speech. In an MSBC word, the individual bits are ordered in a monotonically increasing fashion, the least significant bit coming first, the most significant bit coming last. The most desirable approach to providing digitally secure encryption of these samples (while maintaining MSBC's advantageous spectral efficiency, robustness to radio channel impairments, and speech quality) is to perform sample masking on each individual MSBC word. Therefore, encrypting these samples requires adding a pseudo random n-bit vector in a modulo 2.sup.n -1 fashion.
Currently available key generators for digital encryption are designed for the encryption of binary data only. These key generators are not capable of performing the necessary modulo addition of the random data with the MSBC plain text information.
Several techniques have previously been suggested. One approach is to feed the ciphered output of the key generator (using a fixed input value as the plain text input) as well as the MSBC plain text samples to an additional external adder circuit whose output would then be transmitted on the channel. The problem with this approach is that the external adder circuit contains both plain and cipher text information and provides the path of data to the transmitter. This results in an arrangement being viewed as somewhat "less secure" than having the key generator, which has specially designed output latches and fault detection circuitry provide an exclusive barrier between the plain text and the channel.
Therefore, it would be desirable to provide a means to perform sample masked encryption using a binary encryptor that would permit the binary key generator output alone to provide the transmitter data.